package com.hbzhit.modules.sys.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.hbzhit.common.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import org.springframework.data.annotation.Transient;

import java.util.Date;

/**
 * 项目填报表
 *
 * @author hbzhit
 * @date 2022-04-26 14:52:48
 */
@ApiModel("项目填报表")
@TableName("sys_pro_report")
@Getter
@Setter
public class ProReportEntity extends BaseEntity {

	@ApiModelProperty(value="项目id")
    private String proId;

	@ApiModelProperty(value="填报时期标记")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date periodMark;

	@ApiModelProperty(value="计划任务")
    private String scheduleTasks;

	@ApiModelProperty(value="完成任务")
    private String completeTasks;

	@ApiModelProperty(value="审批状态(0:初始，1:提交汇报，2：提交审批，3：审批通过，4：审批驳s)")
    private Integer bpmStatus;

	@ApiModelProperty(value="填报人")
    private String reporter;

    @ApiModelProperty(value = "填报人类型，0-员工，1-项目经理，2-部门经理")
    private Integer reporterType;

	@ApiModelProperty(value="填报时间")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date reportTime;

	@ApiModelProperty(value="审批人")
    private String approver;

	@ApiModelProperty(value="审批通过时间")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date approverTime;

    @ApiModelProperty(value = "填报组ID")
    private String reportGroupId;

//    @TableField(exist = false)
//    @Transient
//    @ApiModelProperty("要使用的流程")
//    private Long flowMasterId;

    // 审批驳回
    public static final Integer BPM_STATUS_REJECT = 2;
    // 审批通过
    public static final Integer BPM_STATUS_ADOPT = 1;
    // 审批进行中
    public static final Integer BPM_STATUS_IN_PROGRESS = 0;
}
